﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using SILAS.Entidades;

namespace SILAS.DAO
{
    public class UbigeoDAO: MasterDAO, IUbigeoDAO
    {
        public List<Ubigeo> ListDistritosByProvincia(string IdProvincia)
        {
            var query = (from p in context.Ubigeos
                         where p.IdUbigeo.StartsWith("0601") && p.Nivel.Contains("Distrito")
                         orderby p.Nombre
                         select p);

            return query.ToList();
        }


        public List<Ubigeo> ListHijosByIdUbigeoR(string IdUbigeoR)
        {
            var query = (from p in context.Ubigeos
                         where p.IdUbigeoR.Equals(IdUbigeoR)
                         orderby p.Nombre
                         select p);

            return query.ToList();
        }

        public List<Ubigeo> ListCentrosPobladosByDistrito(string IdDistrito)
        {
            var query = (from p in context.Ubigeos
                         where p.IdUbigeo.StartsWith(IdDistrito) && p.Nivel.Contains("Centro Poblado")
                         orderby p.Nombre
                         select p);

            return query.ToList();
        }

        public List<Ubigeo> ListCaseriosBycentroPoblado(string IdCentroPoblado)
        {
            var query = (from p in context.Ubigeos
                         where p.IdUbigeo.StartsWith(IdCentroPoblado) && p.Nivel.Contains("Caserio")
                         orderby p.Nombre
                         select p);

            return query.ToList();
        }





        public List<Ubigeo> ListCPCaserio(string criterio)
        {
            var query = (from p in context.Ubigeos
                         where p.Nombre.StartsWith(criterio) && (p.Nivel.Contains("Caserio") || p.Nivel.Contains("Centro Poblado"))
                         select p);

            return query.ToList();
        }
    }
}
